User-configurable recording of VoIP calls

ABSTRACT

Various example implementations are directed to circuits, apparatuses, and methods for providing voice-over-IP (VoIP) services. According to an example embodiment, an apparatus includes one or more VoIP servers configured and arranged to route VoIP calls to and from users of a plurality of customer accounts. Each customer account has a respective plurality of users and a respective settings file. For each of the customer accounts, a processing circuit communicatively coupled to the VoIP servers, records an audio portion of a VoIP call to or from a user of the customer account in response to the VoIP call satisfying a set of recording criteria specified in the settings file for the customer account. The recording criteria for at least one of the customer accounts includes account-level settings for selecting VoIP calls to be recorded and sets of user-level settings indicating criteria for preventing recording of VoIP calls of the individual users.

OVERVIEW

Computing servers are increasingly being used to provide various voice-over-IP VoIP communication services over a network including for a wide range of customer applications including, but not limited to, residential/business telephony services, video conferencing, dictation/transcription, call centers, intercom service, and/or remote monitoring services. Due to the wide variety of applications that may use VoIP communication, it is difficult to provide features and services for VoIP communications that are tailored to meet the needs of all customer accounts. Similarly, for customer accounts having multiple users (e.g., employees in a company), it is difficult to provide features and services that satisfy the needs and/or preferences of all users of the account.

Various example implementations are directed to circuits, apparatuses, and methods for providing respective VoIP services for a plurality of customer accounts with customizable recording of VoIP calls according to a respective set of settings for each account. The ability to customize settings for each customer account, allows recording of VoIP communications to be used in wide variety of business and residential applications (e.g., transcription services, conference call recording, and/or monitoring and review of calls in a call center). In some implementations, the settings for each customer account may be adjusted by individual users to customize recording of VoIP calls to/from the user (e.g., to adjust needs and/or privacy concerns of the user).

According to an example embodiment, an apparatus includes one or more VoIP servers configured and arranged to route VoIP calls to and from users of a plurality of customer accounts. Each customer account has a respective plurality of users and a respective settings file. For each of the customer accounts, a processing circuit communicatively coupled to the VoIP servers, records an audio portion of a VoIP call to or from a user of the customer account in response to the VoIP call satisfying a set of recording criteria specified in the settings file of the customer account. For at least one of the customer accounts, the recording criteria includes account-level settings and user-level settings for one or more users of the account. The account-level settings indicate criteria for selecting VoIP calls to be recorded. The user-level settings for a user indicate criteria for preventing discernible recording of VoIP calls that have been selected by the criteria indicated in the account-level settings.

According to another example embodiment, a method for providing VoIP services for a plurality of customer accounts is disclosed. For each of a plurality of customer accounts, one or more VoIP servers are used to route VoIP calls to and from a plurality of users of the customer account. An audio portion of a VoIP call to or from a user of one of the customer accounts is recorded in response to the VoIP call satisfying a set of recording criteria specified in a respective settings file of the customer account. For at least one of the customer accounts, the recording criteria includes account-level settings and user-level settings for one or more users of the account. The account-level settings indicate criteria for selecting VoIP calls to be recorded. The user-level settings for a user indicate criteria for preventing discernible recording of VoIP calls of the user that are selected by the criteria indicated in the account-level settings.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention may be more completely understood in consideration of the following detailed description of various embodiments of the invention in connection with the accompanying drawings, in which:

FIG. 1 shows an example communication network for routing VoIP calls and a processing circuit for recording of VoIP calls, consistent with one or more embodiments;

FIG. 2 shows an example process for recording VoIP calls for one of a plurality of customer accounts, according to a respective set of criteria specified in a respective settings file for the customer account; and

FIG. 3 shows a flowchart illustrating a decision process performed by an example set of recording criteria.

While various embodiments are amenable to various modifications and alternative forms, specifics thereof have been shown by way of example in the drawings and will be described in detail. It should be understood, however, that the intention is not to limit the invention to the particular embodiments described. On the contrary, the intention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

DETAILED DESCRIPTION

Aspects of the present disclosure are believed to be applicable to a variety of different types of apparatuses, systems, and methods involving for providing customizable VoIP communications for a plurality of customer accounts. In certain implementations, aspects of the present disclosure have been shown to be beneficial in the context of customizable recording VoIP communications to respective a set of recording criteria for each customer account or respective recording criteria for individual users of the customer accounts. For ease of explanation, examples and embodiments may primarily be discussed with reference to VoIP calls to/from users of customer accounts. While not necessarily so limited, various aspects may be appreciated through a discussion of examples using such exemplary contexts.

In one or more embodiments, an apparatus includes VoIP servers configured to route VoIP calls to and from users of a plurality of customer accounts. Each of the customer accounts has a respective plurality of users and a respective settings file. A processing circuit communicatively coupled to the VoIP servers is configured to record audio of VoIP calls for each of the customer accounts according to the settings file for the customer account. For instance, the processing circuit records an audio portion of a VoIP call to or from a user of a customer account in response to the VoIP call satisfying a set of recording criteria specified in the settings file for the customer account.

Different customer accounts may utilize various criteria to determine whether or not a VoIP call for the customer account should be recorded. For instance, recording criteria for a first account may direct the processing circuit to record all VoIP calls for the account. Recoding criteria for a second account may direct the processing circuit to only record a subset of VoIP calls for the account that have certain characteristics. VoIP calls may be selected to be recorded based on various characteristics specified by the recording criteria for the account including, but not limited to, source or destination numbers of the VoIP call, time or date of the VoIP call, geolocation of call participants, in-call user input, voice recognition triggers, teleconference schedules and/or applicable fees for the call.

In some embodiments, the recording criteria for an account may include multiple levels of recording criteria. For example, the recording criteria for an account may include account-level settings applicable to VoIP calls of all users and user-level settings applicable to VoIP calls of individual users. The account-level settings indicate criteria for selecting calls to be recorded from the VoIP calls of all users of the account. The user-level settings of a user may indicate criteria for selecting VoIP calls of the user to be recorded. In some instances, the user-level settings may additionally or alternatively specify criteria for identifying calls that should not be recorded. For instance, a user may configure user-level settings to prevent discernible recording of calls to or from a user-defined list of personal numbers. For ease of reference, criteria in the user-level settings used to indicate calls that should not be recorded may be referred to as exclusion criteria. If exclusion criteria is satisfied by a VoIP call, recording of the VoIP call is prevented even if account level settings indicate that the call should be recorded.

In some implementations, the user-level settings may allow a user to override the account-level settings. As an illustrative example, a corporation may create a customer account to provide VoIP services for its employees. To improve services provided by the employees, for example customer service in a call center, the company may wish to record business related VoIP calls for later review. The account-level settings may be configured to select VoIP calls in a department of interest (e.g., customer service). However to protect employee privacy, user-level settings may be configured to prevent recording of certain calls selected by the account-level settings. For instance, an employee may set user-level settings to prevent recording of calls to or from a list of personal contact numbers of the employee. In some embodiment, the processing circuit may further protect privacy by providing an audio notification to call participants that the call is being or may be recorded.

Different implementations may use different techniques to prevent discernable recording VoIP calls of a user. In some implementations, discernable recording of a VoIP call may be prevented by disabling recording of VoIP calls of the user by the processing circuit. In some other implementations, discernable recording of a VoIP call may be prevented by encrypting the VoIP call. Encrypting of VoIP calls may also prevent recording of third parties, which transport VoIP data between participants of a VoIP call (e.g., PSTN or cellular network providers).

The settings file for a customer account may specify settings for various options for recording, storage, and/or processing of VoIP calls. For example, in some embodiments, the settings file may specify a recording quality (e.g., bit-rate) or codec (e.g., WAV, MP3, or FLAC) that should be used for recording VoIP calls for the customer account or for individual users.

As another example, the settings file for a customer account may specify settings for storing audio recordings of the VoIP calls. Different embodiments may utilize various storage options for storing audio recordings of VoIP calls. In some implementations, the processing circuit may store audio recordings of VoIP calls in a local data storage included in the apparatus or connected thereto via a local-area-network. In some other implementations, the processing circuit may store audio recordings of VoIP calls in a data storage remote to the apparatus (e.g., connected to the apparatus via the internet or other wide-area network). In some implementations, the processing circuit may store recorded VoIP calls for a customer account in a local or remote data storage specified in the settings file for the account. In some implementations, the processing circuit logs into a data server, using login credentials included in a settings file, and stores a recorded VoIP call in the remote data server. For ease of explanation, the examples are primarily described with reference to storage of recorded VoIP calls in a single data storage device or server. However, the embodiments are not so limited. For instance, in some embodiments, a processing circuit may store recorded VoIP calls using multiple local or remote data storage devices or servers. For instance, a user may adjust user settings to store recorded VoIP calls in several free or paid cloud-based data servers (e.g., DROPBOX, GOOGLE DRIVE, and/or AMAZON CLOUD). The processing circuit may select which remote data server to use based on a number of factors that may be specified in the set of criteria (e.g., available user storage on the remote data servers, transfer speeds to the remote data servers, and/or monetary cost for backup to the remote data servers). In some embodiments, the settings file may be configured to direct the processor to encrypt a recorded VoIP call prior to storing it on the local or remote storage device. The settings file may specify encryption settings including, for example, encryption cipher and encryption key or key size.

In some embodiments, the settings file for a customer account may be configured to cause the processing circuit to transcribe recorded VoIP calls for the customer account or individual users. For instance, after recording a VoIP call the processing circuit may perform voice recognition to generate a transcription of the VoIP call. In some implementations, the transcription may be used by the processing circuit to trigger additional actions to be performed by the processor. As one example, the processor may be configured to send an alert to a user in response to the transcription including a trigger word indicated in the settings file. For instance, the settings file for a customer service call center may be configured to flag a VoIP call for review if the transcription includes profanity.

In some implementations, the processing circuit is also configured to provide a graphical user interface GUI (e.g., an interactive website) for an authorized user(s) to review/adjust the recording criteria and/or other settings of a user account. In some embodiments, the GUI may also allow users to review/adjust user-level settings of the recording criteria. In some implementations, the GUI may allow an authorized user(s) to listen to and/or transcribe recorded VoIP calls. The GUI may also allow an authorized user(s) to forward or share recordings or transcriptions of VoIP calls.

In some implementations, the GUI provides a teleconference interface for scheduling or conducting a teleconference. The teleconference interface may provide various options to the conference participants. For example, the GUI may include a mechanism for users to imitate recording or transcription of the teleconference. As another example, the GUI may include a mechanism for participants to exchange files or collaborate on a shared workspace during the teleconference.

Turning now to the figures, FIG. 1 shows an example communication network for routing VoIP calls and a processing circuit for recording of VoIP calls, consistent with one or more embodiments. The communication network includes a VoIP server 142 configured to VoIP services for users of a plurality of customer accounts. The users may place or receive VoIP calls using various end-point devices including, e.g., mobile devices 120, plain-old telephones (POTS) 122, computer(s) 126, and/or IP phones 128. VoIP calls may be routed to or from the end-point devices over various data networks including, e.g., the internet 112, public service telephone networks 102, cellular networks 104, and wired or wireless private data networks (e.g., LAN 130, and/or Private Branch Exchange servers (not shown)).

A processing circuit 144 is communicatively coupled to the VoIP server 142. The communicative-coupling of the VoIP server 142 and processing circuit 144 may include either a direct connection or an indirect connection having, e.g., multiple connections, relay nodes, and/or networks in a communication path between the VoIP server 142 and processing circuit 144.

The processing circuit 144 is configured to monitor VoIP calls routed by the VoIP server 142 for each of the customer accounts and record a VoIP call in response to the call satisfying respective recording criteria for the client account. In this example, the recording criteria 160 for each account is specified in a respective settings file 152 or 154 stored in a data server 150. In some implementations, the data server 150 may be a local data server connected to the processing circuit 144 directly or via a local area network. In some other implementations, the data server 150 may be remotely connected to the processing circuit 144, for example, via the internet 112.

The settings files 152 and 154 for customer accounts may utilize various recording criteria to determine whether or not VoIP calls should be recorded. The recording criteria may include, for example, source or destination numbers of the VoIP call, time or date of the VoIP call, geolocation of call participants, in-call user input, voice recognition triggers, teleconference schedules and/or applicable fees for the call. In this example, recording criteria 160 specified the settings file 152 includes a set of account-level settings 162 and sets of user-level settings 164 and 166 for individual users of the customer account. The account-level settings 162 indicate criteria for selecting calls to be recorded from the VoIP calls of all users of the account. The user-level settings 164 and 166 indicate criteria for selecting VoIP calls of an individual user to be recorded. In some instances, the user-level settings 164 and 166 may additionally or alternatively specify criteria for identifying calls to be excluded from recording.

As previously described, the processing circuit 144 may utilize various storage options for storing audio recordings of VoIP calls. In some implementations, the processing circuit 144 may store audio recordings of VoIP calls in the same data server 150 as the account settings file 152 and 154. In some other implementations, the processing circuit 144 may additionally or alternatively store the audio recordings of VoIP calls using one or more other data servers (not shown), which may be local or remote to the processing circuit 144.

In some implementations, the processing circuit 144 is also configured to provide a GUI (not shown) for an authorized user(s) to review/adjust the recording criteria 160 and/or other settings of a user account. For example, the processing circuit 144 may host an interactive web-site having a GUI with a mechanism for an authorized user to review/adjust the account-level settings 162 and/or user level settings (e.g., 164) of the recording criteria 160. In some implementations, the GUI may allow an authorized user(s) to listen to and/or transcribe recorded VoIP calls.

In some implementations, the GUI provides an interface for scheduling or conducting a teleconference. The teleconference interface may provide various options to the conference participants. For example, the GUI may include a mechanism for users to imitate recording or transcription of the teleconference. As another example, the GUI may include a mechanism for participants to exchange files or collaborate on a shared workspace during the teleconference.

FIG. 2 shows an example process for recording VoIP calls for one of a plurality of customer accounts, according to recording criteria specified in a respective settings file for the customer account. In response to a VoIP call being initiated, the VoIP call is routed using one or more VoIP servers at block 202.

Block 204 shows a first process for determining whether or not to record the VoIP call. The VoIP call is monitored at block 206 until the call ends or until the recording criteria for the customer account is satisfied at decision block 208. If the call ends before the recording criteria is satisfied, at decision block 208, the process exits without recording the VoIP call. If the recording criteria is satisfied, decision block 208 directs the process to decision block 210. As previously described, in some implementations, user-level settings may indicate exclusion criteria indicating calls that should not be recorded (e.g., personal calls). If exclusion criteria is satisfied at decision block 210, the process exits without recording the VoIP call. Otherwise, the VoIP call is recorded at block 212. After the call is ended, the process stores the recorded VoIP call at block 214.

As previously discussed, different embodiments may store recorded VoIP calls user various local or remote storage devices and/or according to storage options specified in the settings file for the customer account. In this example, the process stores a recorded VoIP by logging into a remote data server at block 216 using login credentials indicated in the settings file for the account and uploading the recorded VoIP call to the remote data server at block 218.

Block 220 shows a second alternative process (illustrated by dashed lines) for determining whether or not to record the VoIP call. In the second process, the VoIP call is automatically recorded at block 220 without regard to the recording criteria or exclusion criteria specified in the settings file for the customer account. Once the call has ended, the process proceeds to decision block 222 to determine whether or not the recorded call should be stored or discarded. If the recording criteria indicated in the settings file for the customer account is not satisfied at block 224, the recording of the VoIP call is deleted at block 228. Otherwise, if the recording criteria is satisfied at block 224, the process proceeds to decision block 226. If exclusion criteria is satisfied by the VoIP call, at decision block 226, the recording of the VoIP call is deleted at block 228. Otherwise, if exclusion criteria is not satisfied at decision block 226 or if no exclusion criteria is specified in the settings file for the customer account, the process stores the recorded VoIP call at block 214 as previously described.

As previously described, the recording criteria may utilize various characteristics of a VoIP call to determine whether or not the VoIP call should be recorded. For instance, VoIP calls may be selected to be recorded based on various characteristics including, but not limited to, source or destination numbers of the VoIP call, time or date of the VoIP call, geolocation of call participants, in-call user input, voice recognition triggers, teleconference schedules, and/or applicable fees for the call.

FIG. 3 shows a flowchart illustrating a decision process performed by an example set of recording criteria for selecting VoIP calls to be recorded. The process includes a number of decision blocks, which direct the process to block 306 if various characteristics of the VoIP call satisfy recording criteria in the settings file. At block 306, the VoIP call is selected for recording unless exclusion criteria indicates that recording of the VoIP call should be prevented.

In some implementations, the process includes one or more decision blocks that direct the process to block 306 if the VoIP call 302 has various characteristics indicating that the VoIP call is business related. For instance, a manager at a company may configure the recording criteria to identify and trigger recording of business related calls. In one example, decision block 304, directs the process to block 306 if the VoIP call 302 is to or from a number included in a whitelist specified in the settings file for the customer account. As another example, decision block 304, directs the process to block 306 if the VoIP call 302 is placed or received within business hours specified by the settings file for the account. As another example, decision block 310 directs the process to block 306 if the VoIP call 302 is to or from a VoIP-enabled device geographically located at a designated business location.

In some embodiments, users may optionally configure the recording criteria, when scheduling a teleconference, to cause the teleconference to be recorded. For example, decision block 312 directs the process to block 306 if the VoIP call 302 corresponds to a pre-scheduled conference having a recording option enabled. The ability to enable recording when scheduling a teleconference simplifies the call in process and allows scheduled teleconference participants to be notified in advance that the conference will be recorded.

In some embodiments, the recording criteria may be used to select VoIP calls for recording based on employee performance. For example, decision block 314 directs the process to block 306 if a user participant of the VoIP call 302 has a performance rating that is less than a threshold level. Such recording criteria may be useful, for example, in a call center to focus managerial review on low-performing employees. In some implementations, the recording criteria may additionally or alternatively perform a random selection of VoIP calls for recording and review. For instance, decision block 316 directs the process to block 306 based on a random selection. In some embodiments, the probability that a VoIP call will be selected for recording at decision block 316 is specified in the settings file for the customer account. In some implementations, the settings file for the customer account may specify a respective probability of selection for each user of the account. In some embodiments, the probability of selection may be specified in the settings file as a percentage of calls of the user that are to be recorded. For example, the probability of selection may be respectfully set to 100%, 50%, or 0% to record all, half, or none of the VoIP calls of a user.

In some embodiments, the recording criteria may be configured to select VoIP calls for recording based words spoken during the call. For instance, the recording criteria may be configured to record VoIP calls that include one or more words indicative of an emergency. In this example, if the recording criteria includes a trigger word list, decision block 320 directs the process to perform voice recognition at block 322. If the voice recognition detects a word in the trigger word list, decision block 324 directs the process to block 306.

In this example, the decision blocks 304, 308, 310, 312, 314, 316 and 320 primarily direct the process to recode the VoIP call in response to the call having individual characteristics. However, various embodiment may include more complex logic for selection of VoIP calls for recording including multiple characteristics in combination. For example, in some embodiments, the recording criteria may only select VoIP calls for recording if a destination/source number of the VoIP call is specified in a source list and the VoIP call is placed during business hours.

As previously indicated, in some implementations, the processing circuit may perform various processes in addition to recording of VoIP calls including, for example, transcription and/or encryption of recorded VoIP calls or generating of alerts. In some implementations, the processes may be enabled or disabled for a customer account and/or individual users according to settings in the account settings file for the account. The account settings file may cause the processing circuit to perform various processing for all VoIP calls or for select VoIP calls that satisfy certain criteria specified in the settings file. For example, as previously indicated, the processing circuit may perform various processes (e.g., alert generation) in response to a voice recognition indicating that a VoIP call includes certain trigger words specified in the account settings file.

Various blocks, modules or other circuits may be implemented to carry out one or more of the operations and activities described herein and/or shown in the figures. In these contexts, a “block” (also sometimes “logic circuitry” or “module”) is a circuit that carries out one or more of these or related operations/activities (e.g., a computing server, a network monitor and/or a GUI). For example, in certain of the above-discussed embodiments, one or more modules are discrete logic circuits or programmable logic circuits configured and arranged for implementing these operations/activities, as in the blocks shown in FIGS. 1, 2 and 3. In certain embodiments, such a programmable circuit is one or more computer circuits programmed to execute a set (or sets) of instructions (and/or configuration data). The instructions (and/or configuration data) can be in the form of firmware or software stored in and accessible from a memory (circuit). As an example, first and second modules include a combination of a CPU hardware-based circuit and a set of instructions in the form of firmware, in which the first module includes a first CPU hardware circuit with one set of instructions, and the second module includes a second CPU hardware circuit with another set of instructions.

Certain embodiments are directed to a computer program product (e.g., nonvolatile memory device), which includes a machine or computer-readable medium, having stored thereon, instructions which may be executed by a computer (or other electronic device) to perform these operations/activities.

The various embodiments described above are provided by way of illustration only and should not be construed to limit the disclosure. Based upon the above discussion and illustrations, those skilled in the art will readily recognize that various modifications and changes may be made without strictly following the exemplary embodiments and applications illustrated and described herein. For instance, although implementations may in some cases be described in individual figures, it will be appreciated that features from one figure can be combined with features from another figure, even though the combination is not explicitly shown or explicitly described as a combination. The disclosure may also be implemented using a variety of approaches such as those involving a number of different circuits, operating systems, and/or software programs/packages. Such modifications and changes do not depart from the true spirit and scope of the present disclosure, including that set forth in the following claims. 

What is claimed is:
 1. An apparatus for providing data communications services for a plurality of customer accounts, each customer account having a respective plurality of users and a respective settings file, comprising: one or more data communications servers configured and arranged to, for each of the plurality of customer accounts, route calls to and from the plurality of users of the customer account; and a processing circuit communicatively coupled to the one or more data communications servers and configured and arranged to, for each of the customer accounts, record an audio portion of a call to or from a user of the customer account in response to the call satisfying a set of recording criteria specified in the settings file of the customer account, the set of recording criteria for at least one of the customer accounts including account-level settings indicating that when a teleconference is scheduled between one or more of the plurality of users, the audio portion of the call to or from the one or more of the plurality of users participating in the teleconference is recorded, and for one or more of the plurality of users of the customer account, respective user-level settings indicating criteria for preventing discernable recording of calls of the user that are selected by the criteria indicated in the account-level settings, and the processing circuit further to record, in response to the teleconference being scheduled, the teleconference as specified from the respective settings files and as directed by the account-level setting criteria and the respective user-level settings.
 2. The apparatus of claim 1, wherein the processing circuit is configured and arranged to, in further response to the set of recording criteria being satisfied: log into a data server remote to the one or more data communications servers using login credentials included in the settings file for the customer account; and store the recorded audio portion of the call in the data server, and wherein the criteria indicated in the respective user-level settings is configurable in the settings file by a manager of the customer account.
 3. The apparatus of claim 1, wherein the processing circuit is further configured and arranged to, in response to the teleconference being scheduled, the one or more of the plurality of users are notified in advance that the teleconference will be recorded.
 4. The apparatus of claim 1, wherein for at least one of the plurality of customer accounts, the set of recording criteria indicated in the settings file is satisfied by a call to one of the plurality of users of the customer account and the user being located within a geographic region defined in the settings.
 5. The apparatus of claim 1, wherein for at least one of the plurality of customer accounts, the set of recording criteria indicated in the settings file is satisfied by the call being to a number specified in a list indicated in the settings file.
 6. The apparatus of claim 1, wherein for at least one of the plurality of customer accounts, the set of criteria indicated in the settings file is satisfied by the call occurring within a time range specified in the settings file.
 7. The apparatus of claim 1, wherein the processing circuit is further configured and arranged to, for each of the plurality of customer accounts, provide a graphical-user-interface (GUI) having a mechanism for an authorized user of the customer account to adjust the set of recording criteria specified in the settings file of the customer account to indicate scheduling of the teleconference.
 8. The apparatus of claim 1, wherein the processing circuit is further configured and arranged to transcribe the recorded audio portion.
 9. An apparatus for providing data communications services for a plurality of customer accounts, each customer account having a respective plurality of users and a respective settings file, comprising: one or more data communications servers configured and arranged to, for each of the plurality of customer accounts, route calls to and from the plurality of users of the customer account; and a processing circuit communicatively coupled to the one or more data communications servers and configured to, for each of the customer accounts, record an audio portion of a call to or from a user of the customer account in response to the call satisfying a set of recording criteria specified in the settings file of the customer account, the set of recording criteria for at least one of the customer accounts including account-level settings indicating that when a teleconference is scheduled between one or more of the plurality of users, the audio portion of the call to or from the one or more of the plurality of users participating in the teleconference is recorded, and for one or more of the plurality of users of the customer account, respective user-level settings indicating criteria for preventing discernable recording of calls of the user that are selected by the criteria indicated in the account-level settings, the processing circuit being further configured to, in response to a call to one of the plurality of users of the customer account, determine an employee performance rating of the user; and the set of recording criteria indicated in the settings file is satisfied by the employee performance rating of the user being less than a threshold rating.
 10. An apparatus for providing data communications services for a plurality of customer accounts, each customer account having a respective plurality of users and a respective settings file, the apparatus comprising: a server means for routing calls to and from the plurality of users of each of the plurality of customer accounts; and a processing circuit configured to record, for each of the plurality of customer accounts, an audio portion of a call to or from a user of the customer account in response to the call satisfying a set of recording criteria specified in the settings file of the customer account, the set of recording criteria for at least one of the customer accounts including account-level settings indicating that when a teleconference is scheduled between one or more of the plurality of users, the audio portion of the call to or from the one or more of the plurality of users participating in the teleconference is recorded, and for one or more of the plurality of users of the customer account, respective user-level settings indicating criteria for preventing discernable recording of calls of the user that are selected by the criteria indicated in the account-level settings, and the processing circuit also configured to record, in response to the teleconference being scheduled, the teleconference as specified from the respective settings files and as directed by the account-level setting criteria and the respective user-level settings.
 11. The apparatus of claim 10, wherein the processing circuit is further configured and arranged to, in response to the teleconference being scheduled, the one or more of the plurality of users are notified in advance that the teleconference will be recorded.
 12. A method, comprising: for each of a plurality of customer accounts, using one or more data communications servers to route calls to and from a plurality of users of the customer account; record an audio portion of a call to or from a user of one of the customer accounts in response to the call satisfying a set of recording criteria specified in a respective settings file of the customer account, the set of recording criteria for at least one of the customer accounts including account-level settings indicating criteria for selecting calls of the plurality of users of the customer account to be recorded, and recording a teleconference when the teleconference is scheduled between one or more of the plurality of users, and for one or more of the plurality of users of the customer account, respective user-level settings indicating criteria for preventing discernable recording of calls of the user that are selected by the criteria indicated in the account-level settings; performing voice recognition to identify words of the call; and recording the audio portion of the call in response to an identified word of the call being included in a list of trigger words specified in the settings file for the corresponding customer account.
 13. The method of claim 12, further comprising in response to the set of recording criteria being satisfied: logging into a data server remote to the one or more data communications servers using login credentials included in the settings file for the customer account; and storing the recorded audio portion of the call in the data server.
 14. The method of claim 12, further comprising, in response to the call satisfying a set of recording criteria, providing notification to the one or more of the plurality of users in advance that the teleconference will be recorded.
 15. An apparatus for providing data communications services for a plurality of customer accounts, each customer account having a respective plurality of users and a respective settings file, comprising: one or more data communications servers configured and arranged to, for each of the plurality of customer accounts, route calls to and from the plurality of users of the customer account; and a processing circuit communicatively coupled to the one or more data communications servers and configured to, for each of the customer accounts, record an audio portion of a call to or from a user of the customer account in response to the call satisfying a set of recording criteria specified in the settings file of the customer account, the set of recording criteria for at least one of the customer accounts including account-level settings indicating that when a teleconference is scheduled between one or more of the plurality of users, the audio portion of the call to or from the one or more of the plurality of users participating in the teleconference is recorded, and for one or more of the plurality of users of the customer account, respective user-level settings indicating criteria for preventing discernable recording of calls of the user that are selected by the criteria indicated in the account-level settings, the processing circuit being further configured to perform a voice recognition analysis to identify words of the call; and for at least one of the plurality of customer accounts, the set of recording criteria indicated in the settings file is satisfied by an identified word of the call being included in a list of trigger words specified in the settings file. 